"""
词频统计（文本处理）
要求：
编写一个函数，接收一个英文段落字符串，统计其中每个单词出现的次数，返
回一个按频率从高到低排序的字典
"""
def word_frequency(text):
    text = text.lower()  #转化为小写
    text = text.replace(',', '').replace('.', '')  #去掉标点
    words = text.split() #将文本按空格分割成单词列表
    dict = {}  #创建空字典dict存储词频
    for word in words:
        dict[word] = dict.get(word, 0) + 1
    items = sorted(dict.items(), key=lambda x: x[1], reverse=True) #按频率降序排序
    sorted_dict = {}
    for word, count in items:
        sorted_dict[word] = count   #创建有序字典
    return sorted_dict

text = "To be or not to be, that is the question."
print(word_frequency(text))   #输出
